1. Field of the Invention
The present invention relates to computer subsystem communications, and, more particularly, to a method and apparatus for coupling a Fibre Channel controller with more than one host computer system, storage router, or the like.
2. Description of the Related Art
Modern computers often include a number of different subsystems, each performing one or more functions necessary to the computer""s operation. For example, computers normally include storage subsystems for storing operating system programs, application programs and data, and the like. As computers"" processing capabilities have increased, the need for increasingly sophisticated, scalable and flexible access to these storage subsystems has become an important issue.
This need has led to the development of what is commonly referred to as a xe2x80x98Storage Area Networkxe2x80x99 (SAN). Within a SAN, host computers provide access to arrays of storage devices that can be either local or remotely located, and can be either centralized in one location or distributed over many. This architectural variability and the complexity of such storage subsystems mandates that the host computers be coupled to devices that can route requests to the storage devices and make their actual configuration transparent to the end-user (i.e. xe2x80x98storage routersxe2x80x99). This added layer between the end-user and data stored on the storage devices de-couples the end-user from the SAN""s architecture.
Historically, host systems have been connected to storage devices using storage routers that are dedicated to mapping the storage devices"" location and configuration and providing transparent access to the end-user. While the host system is generally neither aware of nor dependent upon having such information, such access should be provided in a reliable and immediate fashion. The storage routers ensure such functionality by mapping the architecture of the storage devices, storing this information and subsequently providing for ready access by the host system. To ensure reliability, redundant access is often supported, employing multiple routing devices. Also, in order to make such an arrangement scalable across geographic locations, the routing devices must themselves be interconnected by a more conventional device such as an hub.
The aforementioned configuration is not without problems. Specifically, the necessity of coupling hubs to the storage routers complicates the implementation of a SAN. First, such an architecture impacts the ability of users to flexibly scale the SAN. External hubs are produced with a relatively large number of ports so that architectures employing such hubs can be readily expanded without the need for additional external hubs. For example, external hubs normally provide a minimum of eight ports. If an installation requires fewer ports, or if growth is patterned in such a way that multiples other than eight are desirable, an unavoidable waste of capacity (in terms of ports) results. Second, cost is increased because no matter how small the installation, more than one external hub is required to provide the necessary connectivity. Third, compatibility issues are raised by the introduction of external hubs into the SAN architecture. This is the case any time the products of third-party vendors must be installed in a network""s architecture. The installation and subsequent maintenance of such a system is also further complicated, due at least in part to the need to support the products of multiple vendors. Finally, as more devices are employed in the SAN""s architecture, the more likely it is that one device will perform poorly relative to the remaining devices and so create a bottleneck in the SAN""s throughput.
It is therefore desirable to introduce greater simplicity into the hardware used to communicate between a host system and storage array, while meeting the prerequisites of redundancy and reliability. Preferably, such an architecture also provides improved performance and reduces the SAN""s overall cost.
The present invention provides a computer-subsystem configuration that allows Fibre Channel devices, for example a storage router, to coupled to more than one such device or host computer. The present invention can reside, for example, in a storage router (e.g.,a SAN router) as a subsystem of the storage router.
A configuration according to the present invention provides multi-port coupling capability to the storage router containing such a multi-port Fibre Channel controller. This allows the device to be coupled to more than one host and/or other Fibre Channel storage routers. In another configuration, a dual-port Fibre Channel controller is provided. This allows the device to be coupled to more than one host; or to a host and another Fibre Channel storage router; or to two other Fibre Channel storage routers, for example. Among other advantages, this provides the ability to xe2x80x98daisy-chainxe2x80x99 Fibre Channel devices (i.e. attach multiple devices in series with one another in an unbroken chain), to construct a xe2x80x98loopxe2x80x99 configuration (i.e., attach multiple devices in series with one another, and two of the devices to, for example, a host), or to configure other topologies. Such options provide several benefits, among them redundancy within the device chain.
Notably, embodiments of the present invention allow these configuration options without the use of an external hub device. This is a significant improvement over a single-port configuration. An external hub is required to interconnect current Fibre Channel storage routers. This dependency is problematic for a number of reasons, which include scalability, flexibility, cost, compatibility of devices and the creation of bottlenecks. By removing the need for such devices in a SAN""s architecture, the dual-port storage router configuration considerably simplifies and strengthens the host systems"" ability to access storage devices in a reliable and efficient manner.
In one embodiment of the present invention, a multi-port Fibre Channel controller is disclosed. Such a multi-port Fibre Channel controller includes a number of Fibre Channel ports, an interface unit coupled to each one of the Fibre Channel ports, a Fibre Channel controller and a processor. The processor is coupled to the Fibre Channel controller, and the Fibre Channel controller is coupled to control the interface unit and coupled to the subsystem interface. Such a multi-port Fibre Channel controller may be configured as a dual-port Fibre Channel controller by, for example, employing only two Fibre Channel ports (i.e., a first Fibre Channel port and a second Fibre Channel port).
In another embodiment of the present invention, a method of operating a multi-port Fibre Channel controller is disclosed. Such a multi-port Fibre Channel controller includes a number of ports, as described above, and may contain other of the features and elements of the multi-port Fibre Channel controller described above. The method begins by determining a state of an interface controller. Next, one of the ports is configured. The interface controller is associated with the port, where the port is one of the number of ports. Next, a determination is made as to whether the interface controller is receiving a Fibre Channel signal that is valid. The interface controller is preferably configured to receive the Fibre Channel signal, for example. The port is then enabled if the Fibre Channel signal is valid. If desirable, the multiport Fibre Channel controller may be made to perform an initialization procedure, such as a loop initialization procedure.
The foregoing is a summary and thus contains, by necessity, simplifications, generalizations and omissions of detail; consequently, those skilled in the art will appreciate that the summary is illustrative only and is not intended to be in any way limiting. As will also be apparent to one of skill in the art, the operations disclosed herein may be implemented in a number of ways, and such changes and modifications may be made without departing from this invention and its broader aspects. Other aspects, inventive features, and advantages of the present invention, as defined solely by the claims, will become apparent in the non-limiting detailed description set forth below.